package tool;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @Description:
 * @Author: yjj
 * @Date: 2025/8/18 14:22
 */
public class Main5 {
    /**
     * 从文本中提取所有恰好19位的数字ID
     *
     * @param text 输入文本
     * @return 所有匹配的19位ID列表
     */
    public static List<String> extract19DigitIds(String text) {
        List<String> ids = new ArrayList<>();
        // 核心正则：匹配恰好19位数字，前后都不能是数字（防止匹配更长数字的子串）
        Pattern pattern = Pattern.compile("(?<!\\d)\\d{19}(?!\\d)");
        Matcher matcher = pattern.matcher(text);
        while (matcher.find()) {
            ids.add(matcher.group());
        }
        return ids;
    }

    // 示例使用
    public static void main(String[] args) {
        // 测试文本（包含各种情况）
        String s = "serverId";
        System.out.println(Arrays.asList(s.split(",")));
    }
}
